/*
 *  GWRingModEffect.h
 *  GWGlitch
 *
 *  Created by Michael Forrest on 01/03/2008.
 *  Copyright 2008 Grimaceworks. All rights reserved.
 *
 */

#import "GWEffectBase.h"
#import "SineWave.h"
class GWRingModEffect : public GWEffectBase {
	public:
		GWRingModEffect(AUKernelBase * kernel) : GWEffectBase(kernel){
			printf("created a ring mod effect");
			modulator = new SineWave;
			modulator->setFrequency(440000);
			modulator->reset();
		}
		virtual ~GWRingModEffect(){delete modulator;}
		virtual void 		Process(const Float32		*inSourceP,
								Float32		*inDestP,  
								UInt32 		inFramesToProcess,  
								UInt32		inNumChannels,  
								bool		&ioSilence);
	private:
		SineWave * modulator;
};